import java.util.ArrayList;
import java.util.List;


/**
 * 用线性表实现杨辉三角
 */
public class Test2 {


    public static List<List<Integer>> generte(int numRows){
        List<List<Integer>> list= new ArrayList<>();

        //第一行
        List<Integer> row0=new ArrayList<>();
        row0.add(1);
        list.add(row0);

        //从第二行开始
        for(int i=1;i<numRows;i++){
            //定义当前行
            List<Integer> curRow=new ArrayList<>();

            //每一行的第一个二都是1
            curRow.add(1);


            //获取前一行
            List<Integer> preRow=list.get(i-1);

            //处理中间
            for(int j=1;j<i;j++){
                int x=preRow.get(j)+preRow.get(j-1);
                curRow.add(x);
            }

            //每行的最后一个都是1
            curRow.add(1);
            list.add(curRow);
        }
        return list;

    }

    public static void main(String[] args) {
        List<List<Integer>> list=generte(5);
        System.out.println(list);
    }
}
